Software Architecture

The Road to Software Architecture

The software architecture of a system represents the design decisions related to overall system structure and behavior. Architecture helps stakeholders understand and analyze how the system will achieve essential qualities such as modifiability, availability, and security.

Software architecture supports analysis of system qualities when teams are making decisions about the system rather than after implementation, integration, or deployment. Whether designing a new system, evolving a successful system, or modernizing a legacy system, this timely analysis enables teams to determine whether the approaches they’ve chosen will yield an acceptable solution. An effective architecture serves as the conceptual glue that holds every phase of the project together for all of its stakeholders, enabling agility, time and cost savings, and early identification of design risks.

Ref and Pactice

https://cloud.google.com/architecture/framework

https://martinfowler.com/architecture/

http://codingthearchitecture.com/